home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-06-30 | 60.5 KB | 1,718 lines |
-
-
-
-
-
-
-
-
-
-
-
- AIN - A file compression and archivation utility set
-
-
- Version 2.2
-
-
-
-
-
- User's guide
-
-
-
-
-
-
-
-
-
-
- Copyright (c) 1993-94 Transas Marine (UK) Ltd.
- Saint-Petersburg, Russia
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - 2 -
-
-
- This document presents the detailed description of new software for
- IBM personal computers and compatibles, dealing with the file
- compression and archivation. The software includes a full-featured
- archiver AIN version 2.2, an extracting utility AINEXT and an EXE-
- files compressor AINEXE.
-
- The compression/decompression methods, used in AIN archiver, excels
- noticeably those used in any well-known archivers, such as ARJ, LHA
- and PKZIP, in both the compression degree and the performance.
-
- AINEXE utility is useful for saving the disk space, due to its ability
- to reduce the size of most large DOS executables 2 to 3 times, without
- detriment to their work.
-
- THIS SOFTWARE AND MANUAL ARE SOLD "AS IS" AND WITHOUT
- WARRANTIES AS TO PERFORMANCE OF MERCHANTABILITY OR ANY OTHER
- WARRANTIES WHETHER EXPRESSED OR IMPLIED. BECAUSE OF THE VARIOUS
- HARDWARE AND SOFTWARE ENVIRONMENTS INTO WHICH THIS PROGRAM MAY BE PUT,
- NO WARRANTY OF FITNESS FOR A PARTICULAR PURPOSE IS OFFERED. GOOD DATA
- PROCESSING PROCEDURE DICTATES THAT ANY PROGRAM BE THOROUGHLY TESTED
- WITH NON-CRITICAL DATA BEFORE RELYING ON IT. THE USER MUST ASSUME THE
- ENTIRE RISK OF USING THE PROGRAM. ANY LIABILITY OF THE SELLER WILL BE
- LIMITED EXCLUSIVELY TO PRODUCT REPLACEMENT OR REFUND OF PURCHASE
- PRICE.
-
- No part of this publication may be reproduced, transmitted,
- transcribed, stored in a retrieval system, or translated into any
- other language or computer language in whole or in part, in any form
- or by any means, whether it be electronic, mechanical, magnetic,
- optical, manual or otherwise, without prior written consent of Transas
- Marine (UK) LTD.
-
- AIN is Shareware, and if you use AIN regularly we strongly encourage
- you to register it. As shareware, AIN was distributed freely in order
- to allow people to "test drive" it. The try-before-you-buy concept
- allows users to find out which programs are useful before purchasing
- them. If a is useful, please support it through registration. With
- registration you will receive the latest version of the software and
- update notices. Also the registered version do not display shareware
- banner screen. To register, print out the ORDER.TXT, and send a check
- or money order.
-
- The software is produced and distributed by Transas Marine (UK) Ltd.
-
-
-
-
-
-
-
-
-
-
-
-
-
- - 3 -
-
-
- CONTENTS
-
-
- 1. INTRODUCTION............................................4
- 1.1 Comparison with the analogs.........................4
- 1.2. Main features......................................7
- 1.3. Comparison with the prevoius versions..............9
- 2. AIN VERSION 2.2 ARCHIVER...............................10
- 2.1. Command line format...............................10
- 2.2. Commands of the archiver..........................12
- 2.2.1. A - add files to the archive................12
- 2.2.2. D - delete files from the archive...........13
- 2.2.3. E - extract files from the archive..........14
- 2.2.4. F - refresh obsolete files..................15
- 2.2.5. L - list the contents of the archive........15
- 2.2.6. M - move files to archive...................16
- 2.2.7. T - test the integrity of the archive.......16
- 2.2.8. U - update the archive......................17
- 2.2.9. V - list the contents the archive...........17
- 2.2.10. X - extract files using their pathnames....17
- 2.2.11. Y - rebuild the archive....................18
- 2.3. The switches of the archiver......................18
- 2.3.1. F - split the archive into fragments........19
- 2.3.2. H - display the help........................21
- 2.3.3. G - garble with password....................21
- 2.3.4. M - define the compression method...........23
- 2.3.5. O - specify the output directory............23
- 2.3.6. P - match file names use the full path......24
- 2.3.7. R - recurse the subdirectories..............24
- 2.3.8. S - set the date/time stamp of the archive..24
- 2.3.9. U - define the access speed.................25
- 2.3.10. W - specify the working directory..........26
- 2.3.11. X - exclude files from processing..........26
- 2.3.12. Y - reply Yes to the archiver's requests...26
- 2.4. The AIN_SW environment variable...................27
- 3. THE AINEXT UTILITY.....................................28
- 4. THE AINEXE UTILITY.....................................29
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - 4 -
-
-
- 1. INTRODUCTION
-
-
-
- 1.1 Comparison with the analogs
-
- At present, there are about ten archivers for the IBM PC and
- compatibles. They differ one from another by both their features and
- the technical characteristics (i.e. the compression ratio and the
- performance). The leading place among them belongs, apparently, to ARJ
- version 2.41 and PKZIP version 2.04.
-
- ARJ version 2.41 excels all other archivers in the amount of the
- features, but its technical characteristics are not as good as those
- of PKZIP version 2.04.
-
- The main trait of PKZIP version 2.04 is the high performance. As to
- the compression ratio, this archiver is, at least, as good as ARJ
- 2.41.
-
- Transas Marine (UK) Ltd. proposes a new archiver, AIN version 2.2. The
- main advantage of this archiver is the highest compression degree. It
- becomes especially noticeable when an archive contains a set of files
- of the same type (e. g. the source texts of a program's modules, or
- the financial documents related to the different periods of the
- activity of a company). In such case, the results shown by AIN version
- 2.2 are 1.5 to 2 times better than those shown by all other archivers.
- In average, the advantage is as large as 10 to 20 percent.
-
- As to the performance, AIN version 2.2 excels ARJ version 2.41 as much
- as 1.5 to 2 times, and PKZIP version 2.04 as much as 10 to 20 percent.
- The technical characteristics of the best PC archivers are illustrated
- by the table 1 (that includes also the old AIN version 2.0 and the
- popular LHA version 2.13).
-
- In respect of its features, AIN version 2.2 is, in practice, is as
- powerful as ARJ version 2.41. Although some rarely used features of
- ARJ version 2.41 are not available with AIN version 2.2, there are
- some important opportunities, provided by AIN version 2.2, that ARJ
- version 2.41 does not support. For instance, AIN version 2.2 makes it
- possible for the user to transform an archive, while copying it from
- one disk to another, into a multi-volume archive (this can be useful
- when it is necessary to place an archive, stored in the hard disk,
- into a number of floppy disks). AIN version 2.2 uses an encryption
- method which is much more reliable than that used by ARJ version 2.41
- (where the encryption only comes to the translation by a password-
- depending table). So, AIN version 2.2 is a quite competitive product.
-
-
-
-
-
-
-
-
-
- - 5 -
-
-
- Table 1.
-
- The best archivers for the IBM PC.
-
- Benchmarks were performed on a 33MHz AT-486.
-
- AIN........AIN version 2.2
- ARJ........ARJ version 2.41
- ZIP........PKZIP version 2.04c
-
- +----------------------------------------------------------+
- | Data | Archiver | Compressed | Compression | Decompr.|
- | type | /method | size | time | time |
- |----------+----------+------------+-------------+---------|
- | | AIN /m1 | 62,382 | 6.2 | 13.1 |
- | | /m2 | 63,012 | 5.5 | 13.5 |
- | 75 files | /m3 | 80,470 | 4.7 | 13.9 |
- | |----------+------------+-------------+---------|
- | *.ASM | ARJ /jm | 96,783 | 15.6 | 17.0 |
- | | /m1 | 97,163 | 13.5 | 17.0 |
- | size | /m3 | 100,646 | 12.5 | 16.9 |
- | |----------+------------+-------------+---------|
- | 303,924 | ZIP /ex | 99,239 | 6.3 | 14.0 |
- | | /en | 99,902 | 6.0 | 14.0 |
- | | /es | 110,711 | 5.3 | 14.3 |
- |----------+----------+------------+-------------+---------|
- | | AIN /m1 | 328,023 | 26.6 | 53.5 |
- | | /m2 | 330,187 | 25.0 | 57.0 |
- | 279 files| /m3 | 418,560 | 20.6 | 55.6 |
- | |----------+------------+-------------+---------|
- | *.PAS | ARJ /jm | 454,249 | 63.1 | 70.2 |
- | | /m1 | 464,536 | 60.0 | 71.2 |
- | size | /m3 | 466,991 | 54.2 | 71.6 |
- | |----------+------------+-------------+---------|
- | 1,943,552| ZIP /ex | 462,849 | 34.4 | 54.4 |
- | | /en | 464,437 | 32.6 | 55.5 |
- | | /es | 530,389 | 29.1 | 56.3 |
- |----------+----------+------------+-------------+---------|
- | | AIN /m1 | 261,813 | 14.8 | 16.4 |
- | | /m2 | 262,772 | 11.8 | 16.3 |
- | 70 files | /m3 | 307,826 | 8.7 | 16.9 |
- | |----------+------------+-------------+---------|
- | *.XL* | ARJ /jm | 312,471 | 31.9 | 20.8 |
- | | /m1 | 312,511 | 26.0 | 20.9 |
- | size | /m3 | 329,194 | 20.5 | 20.8 |
- | |----------+------------+-------------+---------|
- | 892,540 | ZIP /ex | 314,166 | 14.4 | 16.1 |
- | | /en | 314,907 | 12.8 | 17.3 |
- | | /es | 346,874 | 9.3 | 18.0 |
- +----------------------------------------------------------+
-
-
-
-
-
-
- - 6 -
-
-
- +----------------------------------------------------------+
- | Data | Archiver | Compressed | Compression | Decompr.|
- | type | /method | size | time | time |
- |----------+----------+------------+-------------+---------|
- | | AIN /m1 | 459,520 | 16.8 | 8.8 |
- | | /m2 | 459,814 | 13.8 | 8.8 |
- | 15 files | /m3 | 490,421 | 9.6 | 9.4 |
- | |----------+------------+-------------+---------|
- | *.PCX | ARJ /jm | 459.999 | 25.4 | 13.0 |
- | | /m1 | 460,002 | 23.0 | 10.7 |
- | size | /m3 | 467,856 | 17.1 | 11.6 |
- | |----------+------------+-------------+---------|
- | 815,004 | ZIP /ex | 460,037 | 20.6 | 9.0 |
- | | /en | 460,623 | 16.2 | 8.3 |
- | | /es | 488,639 | 11.5 | 8.7 |
- |----------+----------+------------+-------------+---------|
- | | AIN /m1 | 164,833 | 6.9 | 5.0 |
- | | /m2 | 164,923 | 6.2 | 5.0 |
- | 11 files | /m3 | 180,565 | 5.1 | 5.2 |
- | |----------+------------+-------------+---------|
- | *.EXE | ARJ /jm | 173,016 | 10.3 | 5.8 |
- | | /m1 | 173,002 | 9.4 | 5.7 |
- | size | /m3 | 176,081 | 8.3 | 5.9 |
- | |----------+------------+-------------+---------|
- | 362,528 | ZIP /ex | 173,015 | 7.2 | 4.6 |
- | | /en | 173,065 | 6.2 | 4.5 |
- | | /es | 187,007 | 4.9 | 4.7 |
- |----------+----------+------------+-------------+---------|
- | | AIN /m1 | 155,384 | 10.5 | 6.3 |
- | | /m2 | 156,657 | 8.8 | 6.6 |
- | 10 files | /m3 | 183,671 | 6.6 | 7.9 |
- | |----------+------------+-------------+---------|
- | *.DBF | ARJ /jm | 160,041 | 36.4 | 7.3 |
- | | /m1 | 161,808 | 16.1 | 7.6 |
- | size | /m3 | 173,438 | 10.5 | 7.1 |
- | |----------+------------+-------------+---------|
- | 703,914 | ZIP /ex | 157,296 | 14.1 | 5.3 |
- | | /en | 160,650 | 9.3 | 5.3 |
- | | /es | 186,543 | 6.1 | 5.5 |
- |----------+----------+------------+-------------+---------|
- | | AIN /m1 | 203,088 | 9.3 | 3.8 |
- | | /m2 | 204,541 | 8.1 | 3.7 |
- | 1 file | /m3 | 250,541 | 5.8 | 4.4 |
- | |----------+------------+-------------+---------|
- | *.DOC | ARJ /jm | 206,720 | 16.7 | 5.0 |
- | | /m1 | 206,804 | 15.0 | 4.6 |
- | size | /m3 | 223,074 | 9.6 | 4.8 |
- | |----------+------------+-------------+---------|
- | 603,909 | ZIP /ex | 203,164 | 14.9 | 3.9 |
- | | /en | 205,807 | 10.4 | 4.1 |
- | | /es | 253,969 | 7.0 | 4.6 |
- +----------------------------------------------------------+
-
-
-
-
- - 7 -
-
-
- +----------------------------------------------------------+
- | Data | Archiver | Compressed | Compression | Decompr.|
- | type | /method | size | time | time |
- |----------+----------+------------+-------------+---------|
- | | AIN /m1 | 74,184 | 19.6 | 6.1 |
- | | /m2 | 77,375 | 7.6 | 6.4 |
- | 20 files | /m3 | 93,221 | 5.4 | 6.7 |
- | |----------+------------+-------------+---------|
- | *.BMP | ARJ /jm | 74,366 | 45.0 | 7.0 |
- | | /m1 | 75,533 | 17.0 | 6.8 |
- | size | /m3 | 80,486 | 9.0 | 6.9 |
- | |----------+------------+-------------+---------|
- | 393,352 | ZIP /ex | 75,381 | 21.3 | 5.5 |
- | | /en | 77,361 | 11.5 | 5.7 |
- | | /es | 92,270 | 4.8 | 5.6 |
- +----------------------------------------------------------+
-
-
- 1.2. Main features
-
- The AIN version 2.2 archiver requires Microsoft DOS version 2.0 or
- newer and provides the following functions:
-
- * Archivation of separate files, directories and entire subtrees of
- the MS DOS file system. The names, or the name templates, of the
- files to archivate, can be submitted both from the command line
- and a file.
-
- * Replacing, deleting and adding new files to existing archives.
- The refreshment of an archive can be made automatically.
-
- * Extraction of separate files, directories and entire subtrees of
- the MS DOS file system into a given directory. The archiver can
- take (or not take) into account the full paths stored in the
- archive's table of contents. The names, or the name templates, of
- the files to extract, can be submitted both from the command line
- and a file. Files extracted from an archive have the same DOS
- attributes and the date/time stamp as the original files had at
- the moment they were archivated. The directories needed to
- reproduce the paths of files are created automatically.
-
- * Choosing between four methods of compression providing different
- ratio and performance. There are also three additional modes for
- choosing between the compression ratio and the quickness of the
- access to the files stored in the archive, so that archives
- intended to be used mainly as a whole can be compressed both
- better and quicker.
-
- * Creating multi-volume archives, i. e. such that are made up of
- several files, named volumes, or fragments. Different fragments
- of the same archive can have different size and be placed on
- different diskettes (e. g., you may create an archive with
- fragments placed, if necessary, on both diskettes of different
- capacity and the hard disk). An archive fragment can be
-
-
- - 8 -
-
-
- considered as both a separate archive and a part of the larger
- archive.
-
- * Changing the properties of existing archives, such as the used
- compression method, fragmentation etc. The resulting archive can
- either replace the old one, or be stored in another drive or
- directory (in this case, the source archive is left unchanged).
-
- * Getting the list of contents of an archive. The list can include
- either basic, or full path names of the archive members.
-
- * Checking the integrity of archives. This is the reliable way to
- detect both accidental (caused by either physical defects of
- magnetic media or hardware faults) and intentional errors in the
- archive structure.
-
- * Archive encryption. The contents of an encrypted archive is
- accessible only after entering the correct encryption password.
- This is the reliable way to protect data from the unauthorized
- access.
-
- The mnemonic and sense of the commands provided by AIN version 2.2 are
- generally the same as in other modern archivers, so that it is easy
- for the user to get started with AIN version 2.2.
-
- Like other archivers, AIN version 2.2 keeps the console report about
- the process, that includes the name of the file being processed and
- the progress indicator. But, unlike other archivers, AIN version 2.2
- provides also the total progress indicator reflecting the completeness
- of the whole job.
-
- For looking through archives and extracting files, it is convenient to
- use the AINEXT utility, which is duplicates the correspondent
- functions of the archiver. AINEXT should be used, instead of AIN
- version 2.2, to pass archives to other organizations that might not
- have AIN version 2.2. This allows both to save the disk space (since
- AINEXT.EXE is smaller than AIN.EXE) and to avoid violation of Transas
- Marine (UK) Ltd. copyright.
-
- The AIN package includes also an EXE-files compressing utility, AINEXE
- version 2.2. Using of this utility allows to reduce 2 through 3 times
- the size of large DOS executables (100K and more bytes). The effect is
- less noticeable for small EXE-files. The compressed executable can be
- run the same way as the original. But EXE-files that use overlays
- cannot be executed after compression, and the utility warns about such
- the situations.
-
- The AINEXE version 2.2 utility is very effective when applied to EXE-
- files obtained with the aid of such software development packages as
- Clipper etc.
-
- The useful side effect from using this utility is that the compressed
- form of an executable is protected from direct modification of its
- contents, so it becomes very difficult both to change the text of a
- program message and to break a dynamic protection mechanism (if any).
-
-
- - 9 -
-
-
- Attempts to change the EXE-file contents will make it most likely
- unable to be executed. From the other hand, it is a very difficult
- task, to restore the original form of the executeble. Note that
- AIN.EXE and AINEXE.EXE are already compressed.
-
-
- 1.3. Comparison with the prevoius versions
-
- The commands and options of AIN version 2.2 do not differ from those
- of AIN versions 2.1 and 2.0.
-
- AIN version 2.2 excels previous version in the performance (see Table
- 1).
-
- AIN version 2.2 archive format is incompatible with that of AIN
- version 2.0.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - 10 -
-
-
- 2. AIN VERSION 2.2 ARCHIVER
-
-
-
- 2.1. Command line format
-
- The MS DOS command line to invoke AIN version 2.2 has the following
- format:
-
- AIN <command> [{/|-}<switch>...] <archive_name>[.AIN]
- [<base_directory>\] [@<list_file_name> ! <file_name_template>
- ...]
-
- where the traditional meta-symbols are used, so brackets '[]' indicate
- optional items, braces '{}' indicate an obligatory choice, vertical
- line '|' means "or", ellipsis '...' indicate optional repetition of
- the previous syntactic item.
-
- Letters in upper and lower cases are equivalent; the only exception is
- the value of the /G switch.
-
- The command line begins with the name of the program (AIN), followed
- by a <command> letter which defines the function requested (e. g., A -
- add files to an archive, D - delete etc.). All commands are described
- in the subsequent sections of this manual.
-
- Switches define the modes of processing. A <switch> is spelled as one
- of the characters of '/' (slash) or '-' (minus) followed by one or two
- identifying characters. Some of the switches can be followed by a
- value, e. g.:
-
- AIN A /R /GBobby ARCHIVE
-
- where the 'R' switch has no value, and the 'G' switch has the value
- 'Bobby'.
-
- The command can contain any number of switches (including none). The
- switches are described in the subsequent sections of this manual.
-
- Any correct DOS file name can be used as the <archive name>, but if
- the file with that name already exists, it must be an AIN version 2.2
- archive. If the file name extension is omitted, then it is assumed
- that the extension is '.AIN'. So, the command in the last example
- refers to the ARCHIVE.AIN archive. To specify that the file name has
- no extension, attach the period '.' at the end of the file name. E.
- g.:
-
- AIN M ARCHIVE. *.C
-
- refers to a file with the name 'ARCHIVE.' (with no extension).
-
- The <base directory> is the directory, from which files to add to the
- archive are taken, or to which files extracted from the archive are
- placed. E. g., the command
-
-
- - 11 -
-
-
- AIN A ARCHIVE \PROJECT\SOURCE\ *.C *.ASM
-
- puts into the archive all files with the extensions '.C' and '.ASM'
- being found in the directory '\PROJECT\SOURCE', and the command
-
- AIN E ARCHIVE C:
-
- extracts all the files from the archive and puts them into the current
- directory of the drive 'C:'
-
- The <base directory> must end with either '\' or ':' character,
- otherwise it will be understood as the first of the <file name
- templates>. When the <base directory> is omitted, the current
- directory (of the current drive) is assumed.
-
- The <file name templates> refer to the files to process. In conformity
- with MS DOS traditions, they can contain such wildcard characters as
- '*' (asterisk) and '?' (question sign) to define a set of file names.
- E. g., the command
-
- AIN A ARCHIVE D*.PAS *.A??
-
- stores in the archive only files whose names either begin with the
- letter 'D' and have the '.PAS' extension, or have the extensions made
- up exactly of three characters, the first of which is 'A'.
-
- The sequence of file names and templates can include references to
- files, containing lists of file names or templates. Such the
- references are preceded with '@' (at) character. E. g., the command
-
- AIN D ARCHIVE PROG.EXE @LIST
-
- provided that the file LIST contain the line:
-
- PACK.COM *.BAT
-
- is equivalent to the command:
-
- AIN D ARCHIVE PROG.EXE PACK.COM *.BAT
-
- The list file should consist of one or several lines containing any
- number of file names or templates, separated with blanks.
-
- Characters '/' (slash) and '-' (minus), used as the switch tag, can be
- (but is not obliged to be) separated, with an arbitrary number of
- blanks, from the preceding element of the command. Swiches can occur
- in any position, e. g.:
-
- AIN/R U -S/GSTAR ARCHIVE -WC: *.C-M3
-
- One switch tag can be followed by several switch letters, but, in this
- case, only the last switch of the sequence can have a value. So, the
- command can be spelled as follows:
-
- AIN U -RSGSTAR ARCHIVE -WC: *.C-M3
-
-
- - 12 -
-
-
- Since the minus character has the special meaning, it is impossible to
- use, as command parameters, file names containing this character.
-
- The execution of the archiver can be stopped at any moment by pressing
- Ctrl-Break keys. If the modification of an archive is interrupted, the
- modification is canceled and the archive is left in the original
- state.
-
-
- 2.2. Commands of the archiver
-
- The AIN version 2.2 archiver allows the following commands:
-
- A - add new files to the archive and replace those existing;
- D - delete files from the archive;
- E - extract files from the archive;
- F - refresh obsolete files;
- L - display the list of contents of the archive;
- M - move files to the archive;
- T - test the integrity of the archive;
- U - refresh obsolete files and add new files;
- V - display the verbose list of contents of the archive;
- X - extract files from the archive, using the full path;
- Y - change the characteristics of the archive.
-
- See below for the detailed description of these commands.
-
-
- 2.2.1. A - add files to the archive
-
- The command "A" copies files to the archive. E. g., the command
-
- AIN A ARCHIVE \SOURCE\ *.PAS *.DOC
-
- copies, from \SOURCE base directory to the archive ARCHIVE.AIN, all
- files which names have the extensions ".PAS" and ".DOC".
-
- If there is no archive with the name specified by the command, it is
- created. This is the usual way of the creating of archives.
-
- If the base directory is omitted, the current directory is used to get
- to the files.
-
- If there are no file names in the command, all files (of the base or
- current directory) are added. So, the command
-
- AIN A ARCHIVE
-
- copies all files of the current directory. Note that although the
- archive itself is in the current directory, it is not included in the
- process. Such the bahaviour is characteristic of all the archiver's
- commands.
-
-
-
-
- - 13 -
-
-
- If the command contains the /R switch, then all requested files of the
- given directory and its subdirectories are copied to the archive. E.
- g., the command
-
- AIN A /R ARCHIVE \PROJECT\ *.C *.H
-
- copies all files with the ".C" and ".H" names' extensions, contained
- in the \PROJECT\ directory, all its subdirectories (including
- subdirectories of the subdirectories etc.).
-
- The "A" command makes the archive to remember all the information
- about the file path available directly from the command. E. g., the
- command
-
- AIN A ARCHIVE C:DIR\ TEXT\FILE.DOC
-
- uses and stores the path constructed as C:DIR\TEXT\FILE.DOC; this name
- will be displayed by "V" command.
-
- If a file with the same name turns to be already existing in the
- archive, it is replaced. For the identification be correct, it is
- recommended to replace files when being in the same current disk and
- directory. For example, after the following command sequence will be
- executed:
-
- C:
- AIN A ARCHIVE TEXT.DOC
- D:
- AIN A ARCHIVE C:TEXT.DOC
-
- the archive will contain two copies of the same file, because the
- first call of the archiver leaves no information about the disk where
- the file is taken from.
-
- When identifying, the archiver builds the full path name of the file,
- proceeding from both the stored part of the path name and the current
- DOS state. Then it compares the resulting string with the full path
- name of the file being added. Therefore, files stored with their full
- names are always identified correctly. It is recommended, however, act
- in accordance with to the rule mentioned above.
-
-
- 2.2.2. D - delete files from the archive
-
- The "D" command deletes files from the archive. E. g., the command
-
- AIN D ARCHIVE *.PAS *.DOC
-
- deletes from the archive all files with ".PAS" and ".DOC" name
- extensions.
-
- The base directory, if specified, is ignored.
-
- The aforesaid command deletes all files with the given extensions,
- with no attention to their path names (as they are stored in the
-
-
- - 14 -
-
-
- archive). Use the /P switch to make the archiver to take the paths in
- account:
-
- AIN D /P ARCHIVE C:\SOURCE\PROG\*.PAS
-
- This command deletes all ".PAS" files stored with the path
- "C:\SOURCE\PROG". If the value of the switch /P is 1:
-
- AIN D /P1 ARCHIVE \S*.PAS
-
- the command deletes files whose paths meet the given string template.
- So, the files \SOURCE\TAX.PAS and \SRC\PROG\DISCO.PAS are deleted, but
- the file DISCO.PAS is not.
-
- The archive size is decreased after deletion.
-
-
- 2.2.3. E - extract files from the archive
-
- The "E" command extracts files from the archive and writes them to the
- base (if specified) or current directory, e. g.:
-
- AIN E ARCHIVE A:\SOURCE\ *.PAS *.DOC.
-
- All files are placed in the same directory with no regard to paths
- stored in the archive. If the base directory does not exist, it is
- created automatically. Files extracted from the archive have the same
- DOS attributes and the date/time stamp as the original files had at
- the moment they were archivated.
-
- The set of files involved in the process is determined as described in
- 2.2.2, but if no file name or template is specified in the command,
- all files are extracted. E. g., the command
-
- AIN E ARCHIVE
-
- copies all files of the archive to the current directory. Files are
- not deleted from the archive, so the archive does not change.
-
- If the file already exists in the target directory, the user is warned
- and then has to select one of the options: to overwrite the old file,
- to cancel the extraction of the file, to place the file to another
- directory and to stop the extraction. The conversation starts with the
- following message:
-
- <File name> already exists
- Date/time: file <date/time>, archive <date/time>
- Overwrite? [Y/N/AY/AN/Q] _
-
- The user should enter "Y" (yes) or "AY" (always yes) to overwrite the
- old file and "Q" to stop the extraction. Having answered "N" (no) or
- "AN" (always no), the user is requested again:
-
- Create the file in another directory? [Y/N/AY/AN/Q] _
-
-
- - 15 -
-
-
- Here, "N" and "AN" mean that the user do not wish the file to be
- extracted. Entering "Y" or "AY", the user will be requested to specify
- a directory. The user can edit the string using the "Backspace" or
- "Arrow left" keys. The user the editing of the directory name is
- finished, when the "Enter" key is pressed. The path name of the
- directory can start with a drive letter (like in "A:\UNPACK"). If the
- directory specified does not exist, it is created automatically.
-
- The answers "always yes" and "always no" mean that if the situation
- will repeat, the answers "yes" or "no" will be assumed with no
- request, respectively. So, if the user wishes not to extract files
- that exist already, he should reply "AN" twice.
-
-
- 2.2.4. F - refresh obsolete files
-
- The "F" command refreshes old files stored in the archive, i. e.
- replaced them with their newer copies, if any. E. g., the command:
-
- AIN F ARCHIVE \SOURCE\ *.PAS *.DOC
-
- overwrites those files "*.PAS" and "*.DOC" of the archive, that have
- an earlier date/time stamp in comparison with corresponding files
- found outside, i. e. files that have changed since they were
- previously copied to the archive.
-
- If the base directory is not specified, the current directory is
- assumed, as usual. If no file name or template is specified, all files
- are checked.
-
- Note that if the /R switch was used when files were added to the
- archive, it most likely should be used again when refreshing. So, the
- archive created with the command
-
- AIN A /R ARCHIVE \PROJECT\
-
- should be refreshed with the command
-
- AIN F /R ARCHIVE \PROJECT\
-
- If the /R switch is omitted, only those files of the archives will be
- refreshed, that correspond to files of the \PROJECT directory (without
- the subdirectories).
-
- The identification of files is the same as when files are replaced by
- A command.
-
-
- 2.2.5. L - list the contents of the archive
-
- The "L" command displays the information about the archive contents.
- E. g., the command
-
- AIN L ARCHIVE *.PAS *.DOC
-
-
- - 16 -
-
-
- displays the information about all files of the archive, whose names
- have the extensions ".PAS" or ".DOC".
-
- The information includes: the name (without the path), the size, the
- date and the time of the last modification. The asterisk '*' appended
- to the file name indicates that there is only the first part of the
- file in this fragment of the archive, and only the size of the part is
- displayed. A number following the file name indicates that there is
- only a continuation of the file in this fragment, starting from the
- offset equal to that number. The set of files involved in the process
- is determined as described in 2.2.3, so, if no file name or template
- is specified in the command, the information about all files is
- displayed.
-
- After all the screen lines are filled with the information, the
- archiver suspends the output and requests:
-
- Continue? [Y/AY/Q] _
-
- When the user replies "Y" or "AY", the output resumes until the next
- portion of data fills the screen, "Q" stops the process. You may press
- "Enter" instead of "Y".
-
- The user can redirect the standard output to put the information into
- a file, e. g.:
-
- AIN L ARCHIVE > ARCHIVE.LST
-
- This command creates ARCHIVE.LST file containing the information about
- the archive contents.
-
-
- 2.2.6. M - move files to archive
-
- The effect of the "M" command is the same as of the "A" command,
- except that moving includes deletion of the files after adding to the
- archive. Files are deleted only after updating of the whole archive is
- finished, so any possibility of the loss of data would be eliminated.
-
- This command is suitable for saving the space on a disk, e. g., the
- command
-
- AIN M /R \PROJECT\ARC \PROJECT\
-
- moves to the archive all files of the \PROJECT directory and its
- subdirectories. Later, the files can be restored with the following
- command:
-
- AIN X \PROJECT\ARC \PROJECT\
-
-
- 2.2.7. T - test the integrity of the archive
-
- The "T" command checks the integrity of an archive (i. e. the
- correctness of its structure), e. g.:
-
-
- - 17 -
-
-
- AIN T ARCHIVE
-
- Only the command letter and the name of an archive should be specified
- in the command line; other arguments, if any, are ignored.
-
- Using of this command is the reliable way to detect both accidental
- (caused by either physical defects of magnetic media or hardware
- faults) and intentional errors in the archive structure.
-
- The user is informed about errors detected while checking paticular
- files of the archive. Any attempt to extract such files from the
- archive will fail. They can only be deleted with the "D" command.
-
-
- 2.2.8. U - update the archive
-
- The effect of the "U" command is the same as of the "A" command,
- except that only those files can be replaced, that have an earlier
- date/time stamp in comparison with corresponding files found outside,
- i. e. files that have changed since they were previously copied to the
- archive. E. g., the command
-
- AIN U ARCHIVE
-
- replaces obsolete files of the archive and adds new files from the
- current directory.
-
-
- 2.2.9. V - list the contents the archive
-
- The effect of the "V" command is similar to that of the "L" command,
- except that the "V" command displays the file names with the paths. E.
- g., if an archive was created with the following command:
-
- AIN M /R ARCHIVE C:\PROJECT\
-
- then, the command
-
- AIN V ARCHIVE
-
- displays the list of the full names of all the files of the \PROJECT
- directory and its subdirectories.
-
- Note, that the archive keeps, as a file name, only the part of the
- path that was available in the command line when the file was added to
- the archive (see the "A" command description).
-
-
- 2.2.10. X - extract files using their pathnames
-
- The "X" command extracts, like the "E" command, files from the
- archive. The difference is that the "X" command restores the paths to
- the files extracted. E. g., if a file was copied to the archive with
- the following command:
-
-
- - 18 -
-
-
- AIN M ARCHIVE C:\A\B\FILE.TXT
-
- then the command:
-
- AIN X ARCHIVE FILE.TXT
-
- extracts the file and puts it into the C:\A\B directory.
-
- If the directory needed does not exist, it is created automatically.
-
- The path to an extracted file is built as follows:
-
- If no base directory is specified in the command line, the path stored
- in the archive is used as is. Otherwise, the letter of a disk (if
- stored with the path) is discarded and the rest of the string is
- appended to the name of the base directory. E. g., continuing the
- example, the command
-
- AIN X ARCHIVE A:DIR\ FILE.TXT
-
- puts the extracted file into the A:DIR\A\B directory (having created
- it first, if necessary).
-
-
- 2.2.11. Y - rebuild the archive
-
- The "Y" command changes the characteristics of an archive (but not its
- contents), that was previously defined with the archiver's switches.
- E. g., the following command
-
- AIN Y ARCHIVE /M1 /GBobby
-
- rebuilds the archive using the maximal compression (/M1 switch) and
- encrypts its contents with the password "Bobby" (supposed that the
- archive was not encrypted earlier).
-
- The /O switch allows to specify a new name for the rebuilt archive
- and, thereby, preserve its original state associated with the old
- name. E. g., the command
-
- AIN Y C:ARCHIVE /OA: /F360
-
- copies the archive from the C drive to the A drive, splitting it into
- fragments corresponding to the 360K diskettes capacity. The source
- archive does not change.
-
-
- 2.3. The switches of the archiver
-
- The mode of operation of the archiver is controlled with the following
- switches:
-
- F - split the archive into fragments;
- H - display an information about the archiver usage;
- G - encrypt the archive with a password;
-
-
- - 19 -
-
-
- M - define the compression method;
- O - specify the output directory;
- P - use full pathnames;
- R - recurse subdirectories;
- S - set the date/time stamp of the archive;
- U - define the access speed;
- W - specify the working directory;
- X - exclude files from processing;
- Y - assume Yes reply to the archiver's request.
-
- See below for the detailed description of these switches.
-
-
- 2.3.1. F - split the archive into fragments
-
- The "F" switch is used to control the size of the archive's fragments.
-
- The AIN archives can be made up of one or more files, generally called
- fragments. When an archive is created, the name of the first archive
- fragment (that can be the whole archive) is specified in the command
- line. As a rule, the extension of the archive's name is ".AIN". The
- names of the subsequent fragments (if any) automatically receive the
- extentions ".001", ".002" etc. E. g., the command
-
- AIN A /F100 ARCHIVE
-
- creates fragments ARCHIVE.AIN, ARCHIVE.001, ARCHIVE.002 etc. The size
- of these fragments does not exceed 100K. The possible values of the
- "F" switch can be described as follows:
-
- F{<number>[K|M]|A]}
-
- where <number> specifies the (maximum) size of the fragment, in
- kilobytes or megabytes depending on the letter that follows the
- <number> ("K" or "M"). The "K" letter can be omitted, so, the switches
-
- /F50 or /F50K
-
- define the fragment size equal to 50 kilobytes, and the switch
-
- /F1.5M
-
- defines the size equal to 1 and a half megabytes.
-
- Values less than 10K are not allowed.
-
- If the value of the switch is "A", the fragment size is limited only
- to the free space of the disk. This is the default value of the
- switch. E. g., the command
-
- AIN A A:ARCHIVE
-
- creates an archive on the drive A with fragments filling all the free
- space of (each next) diskette.
-
-
- - 20 -
-
-
- If the value specified is greater than the free space of the disk, the
- fragment will use all the space; the archiver rejects disks having
- less than 10K of free space.
-
- If the value corresponds to one of the standard capacities of the
- formatted floppy disk (e. g. 360K), the fragment size will not exceed
- the maximal amount of the free space of such a disk (i. e. 352K, for
- instance). E. g., fragments created with the command
-
- AIN A /F720 ARCHIVE
-
- have their size gauged to go into standard 720K diskettes (i. e. equal
- to 713K), and those created with the command
-
- AIN A /F1.2 ARCHIVE
-
- will fit into 1.2M diskettes (the size is 1,185K). The full list of
- the special sizes is the following: 160K, 180K, 320K, 360K, 720K,
- 800K, 1.2M, 1.44M, 2.88M.
-
- To specify one of these sizes in its literal meaning, use the leading
- zero, e. g.:
-
- AIN A /F0360 ARCHIVE
-
- The archiver informs the user about having built a fragment, and then
- requests:
-
- Create next fragment in directory <dir>? [Y/N/AY/Q] _
-
- where <dir> is the path to the directory in which the preceding
- fragment was created. At this moment, the user can replace the disk
- (if necessary) and press "Y" or "AY" to continue. Pressing "Q" stops
- the process. To change the drive or directory, the user should press
- "N" and specify the drive and the directory for building the next
- fragment.
-
- So, if there are no more floppy disks to normally proceed with the
- archiving, the user can place the remaining part of the archive on the
- hard disk. It is possible, in the future, to transfer that part onto
- diskettes, changing the fragment size, if necessary:
-
- AIN Y /OA: /FA C:ARCHIVE.003
-
- The request about possible changing the output directory will appear
- despite the user having previously replied "AY", if the free space on
- the disk is exhausted.
-
- The user can, with the /YF switch, prevent the fragmentation requests,
- so that all the fragments would be created automatically (as far as
- possible).
-
- Fragmentation can arise both when the user creates new archives and
- when he modifies old ones, e. g., the command
-
-
- - 21 -
-
-
- AIN F /F360 ARCHIVE
-
- freshens the obsolete files and splits the archive into fragments.
-
- The user can work with an archive fragment the same way as it were a
- complete archive. E. g., the command
-
- AIN E ARCHIVE.002 *.PAS *.DOC
-
- extracts files from the third fragment of the archive. However, the
- archiver allows, when executing a command that does not modify the
- archive, to process the fragments in succession. For instance, to
- extract the contents of all the fragments of an archive to the hard
- disk, the user can insert the first diskette for the A drive, enter
- the command:
-
- AIN X A:ARCHIVE C:
-
- and then reply to the consequent requests (having the next diskette
- inserted) that are exactly the same as those at the next fragment
- creation.
-
- When executing commands that modify the archive, the archiver
- processes only the fragment specified. E. g., the command:
-
- AIN F ARCHIVE.001
-
- freshens the files of only the ARCHIVE.001 fragment.
-
- Only the last fragment of an archive can be splitted.
-
-
- 2.3.2. H - display the help
-
- The effect of calling the archiver with the /H switch specified is
- displaying the detailed information about this program. The
- information includes a description of all the archiver's commands and
- switches as well as several examples of their usage. The traditional
- /? switch is also available and has the same meaning.
-
- Other switches and the command letter, if any, are ignored.
-
- After all the screen lines are filled with the information, the
- archiver suspends the output and requests the same way as when
- executing the "E" command. Pressing "Enter" is the most common way to
- proceed.
-
- The archiver will also help with its usage if it fails to understand
- the command specified.
-
-
- 2.3.3. G - garble with password
-
- The "G" switch allows to have all the data stored in an archive
- encrypted with a password. This switch can be specified along with any
-
-
- - 22 -
-
-
- archive-modifying command (A, D, F, M, U, Y). So, the encryption can
- take place both when an archive is being created and when an existing
- archive is being modified, e. g., the command
-
- AIN D /GBobby ARCHIVE FILE.TXT
-
- deletes the file specified and encrypts the rest with the "Bobby"
- password.
-
- Any time, when an encrypted archive is accessed, the password must be
- specified having exactly the same form (taking into account the
- difference between the two letter cases) it had when the archive was
- encrypted, e. g., the command
-
- AIN L /GBobby ARCHIVE
-
- displays the list the contents of the encrypted archive.
-
- If the "?" character is specified as the /G switch value, the password
- is requested later and it is not displayed when entered (all
- characters are shown as quotes). The "Backspace" or "Arrow left" keys
- can be used to edit the password. The user must press the "Enter" key
- to finish editing.
-
- If the archive is encrypted but the /G switch is not specified or its
- value is wrong, the password will be requested the same way.
-
- To change the password, or to cancel the encryption, specify the
- switch value as follows:
-
- G{<old password>|?}=[<new password>|?]
-
- E. g., the command
-
- AIN Y /GBobby=hacker ARCHIVE
-
- changes existing password "Bobby" to "hacker", and the command
-
- AIN Y /Ghacker= ARCHIVE
-
- turns the archive into the uncrypted one.
-
- Note, that although the password is not stored in the archive (hence,
- if you have forgotten the password, you may regard the information as
- lost), a checksum, obtained from the password, is kept. This checksum
- is used (and actually can only be used) by the archiver to reject an
- incorrect password and not to attempt to decrypt the archive, that
- would otherwise lead to errors.
-
- The encryption algorithm is based on a random numbers generator having
- the period equal to 2.8e14. The problem of an unauthorized decryption,
- therefore, is connected with the examination of that huge number of
- variants and hardly can be solved (even with the aid of a computer)
- for a reasonable time. Thus, the encryption available with AIN version
-
-
- - 23 -
-
-
- 2.2 is the reliable way to protect your confidential information from
- an unauthorized access.
-
-
- 2.3.4. M - define the compression method
-
- The "M" switch allows to select one of the compression methods listed
- below:
-
- 1 - maximal compression ratio, low performance;
- 2 - normal compression (the default method);
- 3 - fast compression, smaller ratio;
- 4 - no compression.
-
- This switch can be specified along with any archive-modifying command
- (A, D, F, M, U, Y). E. g., the command
-
- AIN A /M3 ARCHIVE
-
- creates the archive using the fast method.
-
- The value of the /M switch is stored in the archive to be used as the
- default the next time the archive is modified. So, the command
-
- AIN F ARCHIVE
-
- freshens the archive (created with the preceding comand) using the
- same (fast) method, and the command
-
- AIN Y /M1 ARCHIVE
-
- recompresses the whole archive using the method of the maximum
- compression.
-
-
- 2.3.5. O - specify the output directory
-
- The "O" switch allows to specify the output directory, i. e. the
- directory used for storing the archive modified by the command. This
- switch can be specified along with any archive-modifying command (A,
- D, F, M, U, Y). E. g., the command
-
- AIN Y /OA:\ /F360 C:ARCHIVE
-
- copies the archive from the C disk to a number of floppy disks.
-
- If the /O switch is not specified, the old archive is replaced by the
- modified version. When creating an archive, the switch is ignored.
-
- The /O switch is most convenient for copying an archive to diskettes
- and possibly having it splitted into fragments.
-
-
-
-
-
- - 24 -
-
-
- 2.3.6. P - match file names use the full path
-
- The "P" switch informs the archiver that the file names and the
- templates specified in the command should be understood as containing
- the path indication. The switch is used with the commands that
- manipulate files in the archive (D, E, L, V, X). E. g., the command:
-
- AIN D /P ARCHIVE *.PAS
-
- deletes from the archive only those of the ".PAS" files, that are
- stored in the archive without path, as it is specified by the command.
- If the /P switch were omitted from this command, all files having the
- ".PAS" extension would be deleted.
-
- The /P switch is implied if the command contains an explicit path
- indication. Thus, the command
-
- AIN V /P ARCHIVE \SOURCE\*.PAS
-
- displays the information about the ".PAS" files stored as having the
- "\SOURCE\" path and is equivalent to that having the /P switch
- omitted.
-
- If the value "1" is specified with the /P switch, e. g, in
-
- AIN D /P1 ARCHIVE \S*.PAS
-
- the special characters used in a file name template spread over the
- whole template string, including the path. So, the template specified
- in the example matches to \SOURCE\TAX.PAS, \SRC\PROG\DISCO.PAS and not
- matches to DISCO.PAS.
-
-
- 2.3.7. R - recurse the subdirectories
-
- The "R" switch indicates that the files to add to the archive should
- be looked for in all the subdirectories of the base (or current)
- directory. E. g ., the command
-
- AIN A /R ARCHIVE \PROJECT\ *.PAS
-
- copies to the archive all the files, with the extension ".PAS",
- containing in the \PROJECT directory as well as in all its
- subdirectories. If the /R switch were omitted from the command, only
- the files of the base directory would be copied.
-
- The switch is used with the commands A, F, M, U.
-
-
- 2.3.8. S - set the date/time stamp of the archive
-
- The "S" switch changes the date/time stamp of the archive so that it
- would be the same as that of the newest file stored in this archive.
- E. g., the command
-
-
- - 25 -
-
-
- AIN F /S ARCHIVE
-
- puts the archive's date/time stamp in dependence of that of the newest
- file the archive contains. Omitting the /S switch results in the
- archive having its date and time referred to the last moment it was
- modified. The /S switch is used with any archive-modifying command (A,
- D, F, M, U, Y).
-
-
- 2.3.9. U - define the access speed
-
- The "U" switch allows to select one of the values of the speed of the
- access to the files stored in the archive:
-
- 1 - slow access (default);
- 2 - normal speed;
- 3 - fast access.
-
- The archive access speed is the quickness of execution of the commands
- that replace (A, D, F, M, U) or extract (E, X) files of the archive.
- The actual access speed depends not only on the value selected, but
- also on the relative size of the file being accessed as well as on its
- position within the archive (an access to a small file can require
- much time). However, by requesting the slower access, the user allows
- the archiver to enhance the compression provided by the method
- selected with the /M switch (see 2.3.4).
-
- The /U switch can be used with any archive-modifying command (A, D, F,
- M, U, Y). E. g., the command
-
- AIN A /U3 ARCHIVE
-
- creates an archive that can be updated fast.
-
- The value of the /U switch is stored in the archive to be used as the
- default the next time the archive is modified. E. g., the command
-
- AIN F ARCHIVE
-
- applied to the archive created by the preceding command, rapidly
- freshens (some of the files of) the archive, and the command:
-
- AIN Y /U1 ARCHIVE
-
- turns it to be updated for a longer time (but, may be, better
- compressed).
-
- The enhancement of the compression quality at the expense of the
- access speed is especially noticeable when a large number of files of
- the same type are stored in an archive.
-
- From the other hand, if the files have essentially different types,
- the compression quality can fall.
-
-
-
- - 26 -
-
-
- 2.3.10. W - specify the working directory
-
- The "W" switch allows to specify a directory for temporary files
- allocation. E. g., when executing the command
-
- AIN F /WC: A:ARCHIVE
-
- the archiver will use the C: drive's current directory for allocation
- of the temporary copy of the archive being modified, keeping the
- original archive unchanged until the work is complete (to preserve
- data from being destroyed due to a hardware fault). If the "W" switch
- is omitted, the same directory (of the same disk) is used for the
- temorary files allocation as that containing the source archive. This
- requires the sufficient space on the disk, otherwise the archiver will
- stop (having the archive left in its original state, of course).
- Hence, it is recommended to assign the working directory always to the
- hard disk (or, at any rate, to another drive) when modifying archives
- stored on floppy disks.
-
-
- 2.3.11. X - exclude files from processing
-
- The "X" switch excludes the files specified from the processing. E.
- g.,
-
- AIN A ARCHIVE *.EXE /XNC*.* /XFC*.*
-
- copies into the archive all the ".EXE" files of the current directory,
- except those that have their names starting with either "NC" or "FC".
-
- The "X" switch can occur several times with any command that uses file
- specifications (A, D, E, F, L, M, U, V, X). The "P" switch (see 2.3.6)
- can affect understanding of the file path/name templates. Thus, the
- command
-
- AIN V /X\PROJECT\*.PAS ARCHIVE
-
- displays an information about \PROJECT\SOURCE\DISCO.PAS, and the
- command
-
- AIN V /P1 /X\PROJECT\*.PAS ARCHIVE
-
- does not, because, in this case, the file name falls under the /X
- switch's influence.
-
-
- 2.3.12. Y - reply Yes to the archiver's requests
-
- The "Y" switch allows to automatically reply "Yes" to all or the
- certain requests by the archiver. The value associated with the switch
- specifies the particular request type:
-
- F - the request about moving on to the next fragment;
- O - the request to overwrite a file.
-
-
- - 27 -
-
-
- If no value is specified, all the types of requests are implied. For
- example:
-
- AIN A /F360 /YF ARCHIVE
-
- writes all the archive fragments onto the same disk with no requests
- to the user to insert the next diskette.
-
-
- 2.4. The AIN_SW environment variable
-
- The AIN version 2.2 archiver takes the switches both from the command
- line and the special variable of the DOS environment. The last allows
- the user to redefine the defaults related to the switches. Thus,
- having the following line added to the AUTOEXEC.BAT file:
-
- SET AIN_SW=/M3/U3/WC:
-
- the user forces the archiver to use the specified values as the
- defaults. Then, if some of these switches will be omitted from a
- command, the switch value will be taken from the AIN_SW variable. E.
- g., the command
-
- AIN A /U2 /R ARCHIVE
-
- is executed with the following switches: /U2 /R /M3 /WC:.
-
- In order to avoid failures due to the disk overflow when modifying
- archives stored on diskettes, it is recommended to have the AIN_SW
- variable keeping at least the /W switch that would be specifying a
- hard disk directory to contain temporary files (like that in the
- example above).
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - 28 -
-
-
- 3. THE AINEXT UTILITY
-
- The AINEXT utility allows to view and extract the contents of an
- archive created with AIN version 2.2. It is simply a version of the
- archiver having the reduced command set to support only displaying of
- the information about an archive and extracting files (E, L, V, X).
- The command line format is the same:
-
- AINEXT <command> [{/|-}<switch>...] <archive name>[.AIN] [<base
- directory>\] [@<list file name>!<file name template>...]
-
- Only /G, /H, /P, /X and /Y switches can be used.
-
- Unlike AIN version 2.2, the AINEXT utility ignores the AIN_SW
- environment variable.
-
- The AINEXT utility supports fragmented archives.
-
- Examples:
-
- AINEXT E ARCHIVE
-
- extracts all files from the archive to the current directory;
-
- AINEXT X /X*.EXE /GBobby ARCHIVE A: P*.*
-
- extracts, with the paths, from the password-protected archive, all
- files whose names begin with "P" and extensions are not ".EXE", and
- puts them into the A: drive's current directory;
-
- AINEXT V ARCHIVE > ARCHIVE.LST
-
- lists the archive's contents to the ARCHIVE.LST file.
-
- The AINEXT utility should be used, instead of AIN version 2.2, to pass
- archives to other organizations that might not have AIN version 2.2.
- This allows both to save the disk space (since AINEXE.EXE is smaller
- than AIN.EXE) and to avoid violation of Transas Marine (UK) Ltd.
- copyright.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - 29 -
-
-
- 4. THE AINEXE UTILITY
-
- The AINEXE utility is an EXE-file compressor. It is useful for saving
- the disk space, due to its ability to reduce the size of most large
- (100K and more bytes) DOS executables 2 to 3 times, without detriment
- to their work. The effect is less noticeable for small EXE-files.
-
- The command line format is the following:
-
- AINEXE <file name>[.EXE]
-
- The original file is saved under the ".OLD" extension (the utility
- terminates if such file already exists); you may delete it after the
- packed EXE-file is tested.
-
- The AINEXE version 2.2 utility is very effective when applied to EXE-
- files obtained with the aid of such software development packages as
- Clipper etc.
-
- The useful side effect from using this utility is that the compressed
- form of an executable is protected from direct modification of its
- contents, so it becomes very difficult both to change the text of a
- program message and to break a dynamic protection mechanism (if any).
- Attempts to change the EXE-file contents will make it most likely
- unable to be executed. From the other hand, it is a very difficult
- task, to restore the original form of the executeble. Note that
- AIN.EXE and AINEXE.EXE are already compressed.
-
- The compressed executable can be run the same way as the original. But
- EXE-files that use overlays cannot be executed after compression, and
- the utility warns about such the situation. Generally, if the EXE-file
- contains an information attached to its loadable part, the utility
- puts a warning message and then requests:
-
- 1 - cancel the compression
- 2 - attach the information to the compressed file
- 3 - discard the information
-
- If "1" is chosen, the utility terminates leaving the EXE-file in its
- original state; "2" forces the utility to simply attach the
- information at the end of the compressed part; "3" allows to discard
- the information. The most probable types of an additional information
- are:
-
- * symbol tables used by debuggers; this information most likely can
- be discarded, if no further debugging is intended;
-
- * a program's read-only data; this must be, at least, attached to
- the compressed EXE;
-
- * overlaying codes and data; the user should give up the idea to
- compress such a file.
-
- Being called with either /H or /? switch, the AINEXE utility only
- displays a help.
-